<template>
    <div style="display: flex;width: 100%;height: 100vh;">
        <!-- 右边 -->
        <div style="width: 300px;color: rgb(12, 21, 29); min-height: 100%;">
            <!-- 组件名 -->
            <div style="display:flex ;">
                <h1
                    style="margin-top: 10px;margin-left: 30px;width: 130px;text-align: center;background-color:rgb(240, 20, 31);">
                    {{ 组件名 }}</h1>
                <el-button size="small" style="margin-top: 20px;margin-left: 30px;" @click="重置组件">重置组件</el-button>
            </div>
            <div style="height: 90%;">
                <!-- 属性 -->
                <el-scrollbar height="100%">
                    <!-- 选中项绑定值 -->
                    <div :style='样式1'>
                        <h4>选中项绑定值 : </h4>
                        <spen :style='样式2'>英:v_model,类型:string / number / boolean,默认:—</spen><br>
                    </div>
                    <div style='text-align: left; margin-left: 30px;'><el-radio-group v-model='属性.v_model' size='small'
                            @change="提交改变"></el-radio-group></div>
                    <!-- 单选框的值 -->
                    <div :style='样式1'>
                        <h4>单选框的值 : </h4>
                        <spen :style='样式2'>英:label,类型:string / number / boolean,默认:—</spen><br>
                    </div>
                    <div style='text-align: left; margin-left: 30px;'><el-radio-group v-model='属性.label' size='small'
                            @change="提交改变"></el-radio-group></div>
                    <!-- 是否禁用单选框 -->
                    <div :style='样式1'>
                        <h4>禁用 : </h4>
                        <spen :style='样式2'>英:disabled,类型:boolean,默认:FALSE</spen><br>
                    </div>
                    <div style='text-align: left; margin-left: 30px;'><el-radio-group v-model='属性.disabled' size='small'
                            @change="提交改变">
                            <el-radio :label=true>是 </el-radio>
                            <el-radio :label=false>否 </el-radio>
                            <el-radio :label=null>无</el-radio>
                        </el-radio-group></div>
                    <!-- 是否显示边框 -->
                    <div :style='样式1'>
                        <h4>显示边框 : </h4>
                        <spen :style='样式2'>英:border,类型:boolean,默认:FALSE</spen><br>
                    </div>
                    <div style='text-align: left; margin-left: 30px;'><el-radio-group v-model='属性.border' size='small'
                            @change="提交改变">
                            <el-radio :label=true>是 </el-radio>
                            <el-radio :label=false>否 </el-radio>
                            <el-radio :label=null>无</el-radio>
                        </el-radio-group></div>
                    <!-- 单选框的尺寸 -->
                    <div :style='样式1'>
                        <h4>尺寸 : </h4>
                        <spen :style='样式2'>英:size,类型:enum,默认:—</spen><br>
                    </div>
                    <div style='text-align: left; margin-left: 30px;'><el-radio-group v-model='属性.size' size='small'
                            @change="提交改变">
                            <el-radio label="large">大 </el-radio>
                            <el-radio label="default">中 </el-radio>
                            <el-radio label="small">小</el-radio>
                            <el-radio :label=null>无</el-radio>
                        </el-radio-group></div>
                    <!-- 原始 name 属性 -->
                    <div :style='样式1'>
                        <h4>原始 name 属性 : </h4>
                        <spen :style='样式2'>英:name,类型:string,默认:—</spen><br>
                    </div>
                    <div style='text-align: left; margin-left: 30px;'><el-radio-group v-model='属性.name' size='small'
                            @change="提交改变"></el-radio-group></div>

                </el-scrollbar>

            </div>
        </div>
        <!-- 左边 -->
        <div style="width: calc(100vw - 300px);;background-color: rgb(160, 178, 194); text-align: center;height: 99%;">
            <el-radio-group v-model="绑定值" @change="绑定值变化时触发的事件" style="margin-top: 20px;">
            <el-radio :label="3"  v-bind="属性" >Option A</el-radio>
            <el-radio :label="6"  v-bind="属性" >Option B</el-radio>
            <el-radio :label="9"  v-bind="属性" >Option C</el-radio>
            </el-radio-group>
            <el-input v-model="代码" :autosize="{ minRows: 5, maxRows: 50 }" type="textarea" placeholder="代码展示" style="width: 98%;margin-top: 50px;"/>

        </div>
    </div>
</template>
<script setup>
import { Delete, Edit, Search, Share, Upload } from '@element-plus/icons-vue'
import { ElMessage, formItemContextKey, ElMessageBox } from 'element-plus'
import { ref, reactive } from 'vue'
import{getCurrentInstance} from 'vue'
const { proxy } = getCurrentInstance();
const 提交方法 = proxy.API.提交方法 //提交方法('方法名',.....其他参数)
const ws广播 = proxy.API.监听ws广播 //监听ws广播('方法名',function(参数)) //广播 就是所有用户都会收到
const ws标识 = proxy.API.监听ws标识 //监听ws标识('方法名','标识',function(参数)) // 标识 相同标识的都会收到  比如多用户账号指定某账号  和 账号多处登录
const 跳转路由 =proxy.router
const 绑定值 = ref(3)
const 绑定值变化时触发的事件=()=>{console.log(绑定值.value)}




const 代码 = ref('')
const 提交改变=async()=>{
    let 结果=await 提交方法("组件修改",组件名.value,属性.value)
    代码.value=结果
}

const 组件名 = ref('单选框')
const 属性 = ref({
    disabled:null,//是否禁用单选框
    border:null,//是否显示边框
    size:null,//单选框的尺寸
    name:null,//原始 name 属性

})
const 重置组件=()=>{
    let 原生属性 = {
    disabled:null,//是否禁用单选框
    border:null,//是否显示边框
    size:null,//单选框的尺寸
    name:null,//原始 name 属性

    }
    属性.value=原生属性
    绑定值.value=3
    提交改变()
}


const 样式1 = ref('display: flex;margin-top: 10px;margin-left: 5px;font-size: 14px;border: 1px solid #ccc;width:95%')
const 样式2 = ref('color:rgb(190, 161, 161);font-size: 10px;margin-left: 10px;')





</script>
<style   scoped>

</style>
